:global(.webchat) .feedback-form {
  display: contents;

  .feedback-form__vote-button-bar {
    display: flex;
    gap: 2px;
  }

  .feedback-form__form {
    display: flex;
    flex-direction: column;
    gap: 4px;
    position: relative;
    /* The form should take the full width of the flex container width. */
    width: 100%;
  }

  .feedback-form__form-header {
    color: #373435;
    display: flex;
    flex-direction: column;
    font-family: var(--webchat__font--primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
  }

  .feedback-form__text-box {
    background-color: #ffffff;
    border-radius: 4px;
    border: 1px solid #e8e8e8;
    font-size: 14px;
    line-height: 20px;
    overflow: hidden;
    padding: 8px 12px;
    position: relative;

    &::after {
      border-bottom-left-radius: 4px;
      border-bottom-right-radius: 4px;
      border-bottom: 3px solid var(--webchat__color--accent);
      bottom: -1px;
      clip-path: inset(calc(100% - 3px) 50% 0 50%);
      content: '';
      height: 4px;
      left: -1px;
      position: absolute;
      right: -1px;
      transition: none;
    }

    &:focus-within {
      border: 1px solid #e8e8e8;
    }

    &:focus-within::after {
      clip-path: inset(calc(100% - 3px) 0 0 0);
      transition: clip-path 200ms cubic-bezier(0, 0, 0, 1);
    }
  }

  .feedback-form__text-area {
    resize: none;
    margin-inline-end: -8px;
  }

  .feedback-form__form-footer {
    color: var(--webchat__color--subtle);
    font-family: var(--webchat__font--primary);
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: 14px;
  }

  .feedback-form__submission-button-bar {
    display: flex;
    gap: 8px;
    margin-block-start: 6px;
  }

  .feedback-form__submit-button {
    background-color: var(--webchat__color--accent);
    border-radius: 4px;
    border: 1px solid var(--webchat__color--accent);
    color: #ffffff;
    cursor: pointer;
    font-family: var(--webchat__font--primary);
    font-size: 12px;
    height: 24px;
    padding: 0 8px;
  }

  .feedback-form__submit-button:hover {
    background-color: #004a98;
    border: 1px solid #004a98;
    color: #ffffff;
  }

  .feedback-form__submit-button:active {
    background-color: #004a98;
    border: 1px solid #004a98;
    color: #ffffff;
  }

  .feedback-form__cancel-button {
    background-color: #ffffff;
    border-radius: 4px;
    border: 1px solid #e8e8e8;
    color: var(--webchat__color--subtle);
    cursor: pointer;
    font-family: var(--webchat__font--primary);
    font-size: 12px;
    height: 24px;
    padding: 0 8px;
  }

  .feedback-form__cancel-button:hover {
    background-color: var(--webchat__color--subtle);
    color: #ffffff;
  }
}
